using System;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("MobileCallbackManager")]
	public class MobileCallbackManager : MonoBehaviour
	{
		public static string CHINESE_CURRENCY_CODE => MonoClass.smethod_8(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "CHINESE_CURRENCY_CODE");

		public static string CHINESE_COUNTRY_CODE => MonoClass.smethod_8(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "CHINESE_COUNTRY_CODE");

		public static char RECEIPT_DATA_DELIMITER => MonoClass.smethod_6<char>(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "RECEIPT_DATA_DELIMITER");

		public static int LARGE_RECEIPT_CHAR_THRESHOLD => MonoClass.smethod_6<int>(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "LARGE_RECEIPT_CHAR_THRESHOLD");

		public static MobileCallbackManager s_Instance => MonoClass.smethod_7<MobileCallbackManager>(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "s_Instance");

		public bool m_wasBreakingNewsShown => method_2<bool>("m_wasBreakingNewsShown");

		public MobileCallbackManager(IntPtr address, string className)
			: base(address, className)
		{
		}

		public MobileCallbackManager(IntPtr address)
			: this(address, "MobileCallbackManager")
		{
		}

		public static MobileCallbackManager Get()
		{
			return MonoClass.smethod_15<MobileCallbackManager>(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "Get", Array.Empty<object>());
		}

		public static bool IsAndroidDeviceTabletSized()
		{
			return MonoClass.smethod_14<bool>(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "IsAndroidDeviceTabletSized", Array.Empty<object>());
		}

		public static void RegisterPushNotifications()
		{
			MonoClass.smethod_17(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "RegisterPushNotifications");
		}

		public static void LogoutPushNotifications()
		{
			MonoClass.smethod_17(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "LogoutPushNotifications");
		}

		public static bool IsDevice(string deviceModel)
		{
			return MonoClass.smethod_14<bool>(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "IsDevice", new object[1] { deviceModel });
		}

		public static int GetMemoryUsage()
		{
			return MonoClass.smethod_14<int>(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "GetMemoryUsage", Array.Empty<object>());
		}

		public static bool AreMotionEffectsEnabled()
		{
			return MonoClass.smethod_14<bool>(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "AreMotionEffectsEnabled", Array.Empty<object>());
		}

		public static void RegisterForPushNotifications()
		{
			MonoClass.smethod_17(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "RegisterForPushNotifications");
		}

		public static void LogoutForPushNotifications()
		{
			MonoClass.smethod_17(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "LogoutForPushNotifications");
		}

		public static void PushRegistrationInfo(string gameAccountIdStr, string bnetRegion, string locale)
		{
			MonoClass.smethod_18(TritonHs.MainAssemblyPath, "", "MobileCallbackManager", "PushRegistrationInfo", gameAccountIdStr, bnetRegion, locale);
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void ClearCaches(LowMemorySeverity severity)
		{
			method_8("ClearCaches", severity);
		}

		public void LowMemoryWarning(string msg)
		{
			method_8("LowMemoryWarning", msg);
		}
	}
}
